Miranda: A Non-Strict Functional language with Polymorphic Types
نویسنده
چکیده
data types Many of the data types which in other languages would have to be expressed as abstract data types can be represented in Miranda as algebraic data types with associated laws. Nevertheless there is still a need for abstract data types, as may be seen from the following example (which is based on a use of abstract data types in the LCF system [Gordon et al 79]).
منابع مشابه
Teaching C in a Functional Style
The rst introduction to imperative programming for the majority of our students is with C, but fortunately it is preceded by a course on problem solving and program design using the lazy functional language Miranda. C is a diicult language to learn, but by drawing on the skills taught in the Miranda course, notions such as modularity, information hiding, recursion, abstraction, top-down design,...
متن کاملUsing a Functional Language for Parsing and Semantic Processing
This paper shows how a non-strict functional programming language with polymorphic typing can be used to deene grammar rules and semantic evaluation along the lines of Montague. This approach provides a uniied formalism needing no preprocessing or postprocessing to the functional language itself: parsing and semantics are declared naturally using function deenition and evaluation is done by lam...
متن کاملHigher Order Demand Propagation
In this report a new backward strictness analysis for functional languages is presented. It is called higher order demand propagation and is applicable to a realistic non-strict functional language, which has a polymorphic type system and supports higher order functions and user definable algebraic data types. This report defines a semantics for higher order demand propagation and relates it to...
متن کاملTaming Selective Strictness pdfkeywords
Free theorems establish interesting properties of parametrically polymorphic functions, solely from their types, and serve as a nice proof tool. For pure and lazy functional programming languages, they can be used with very few preconditions. Unfortunately, in the presence of selective strictness, as provided in languages like Haskell, their original strength is reduced. In this paper we presen...
متن کاملTaming Selective Strictness
Free theorems establish interesting properties of parametrically polymorphic functions, solely from their types, and serve as a nice proof tool. For pure and lazy functional programming languages, they can be used with very few preconditions. Unfortunately, in the presence of selective strictness, as provided in languages like Haskell, their original strength is reduced. In this paper we presen...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1985